package com.ctsi.auth.vcc.manager;

/**
 * @author zhangjw
 * @className VerificationCodeCache
 * @description 登陆时锁定用户缓存
 * @date 2019/2/21 16:13
 **/
public interface UserAccoutLockCache {

    /**
     * 删除缓存的登陆次数
     * @param cacheName
     * @param userName
     */
    void remove(String cacheName, String userName);

    /**
     * 获取用户当前登陆次数，同时累加次数
     * @param cacheName
     * @param userName
     * @return
     */
    int getAndIncrement(String cacheName, String userName,Integer lockTime);

    /**
     * 获取剩余次数
     * @param cacheName
     * @param userName
     * @return
     */
    int get(String cacheName,String userName);

    /**
     * 初始化缓存
     * @param cacheName
     * @param userName
     * @param initValue 初始值
     */
    void initCache(String cacheName,String userName,int initValue);

}
